﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Cofe.Core;
using Cofe.Core.Implements;
using Cofe.Core.Interfaces;
using Cofe.Core.Logger;
using Cofe.Core.Service;
using Cofe.Web.Feed;
using Cofe.Web.Implements;
using Cofe.Web.Session;

namespace Cofe.Web
{
    public class RegisterModule : RegisterModuleBase
    {
        public RegisterModule()
        {
            //Add all services here.
            base.registerServices(
               new CofeWsSettings(),
               new WSUserManager(),
               new CofeWSPropertyProvider.Factory(),
               new WSEntryXmlSerializer(),
               new WSEntryJObjectSerializer(),

               new FeedManager(),
               new CofeSystemEventArgsFeedService(),
                //new EventArgsFeedService(),

               new HttpMessageFormatterManager(),
               new StreamResponseFormatter(),
               new StreamRequestFormatter(),
               new BitmapResponseFormatter(),
               new BitmapRequestFormatter(),
               new EntryResponseFormatter(),
               new EntryRequestFormatter(),
               new FeedResponseFormatter()
                );
        }

        public override void PostRegister()
        {
            base.PostRegister();
            
        }
    }
}
